package types

const (
	TypeBinary     = "binary"
	TypeDocker     = "docker"
	ClusterMode    = "cluster"
	SoloMode       = "solo"
	PierModeDirect = "direct"
	PierModeRelay  = "relay"
	PierModeUnion  = "union"
	LinuxSystem    = "linux"
	DarwinSystem   = "darwin"

	ChainTypeEther  = "ethereum"
	ChainTypeHpc    = "hyperchain"
	ChainTypeFabric = "fabric"

	BitxhubTarNameMacOS        = "bitxhub_darwin_x86_64_%s.tar.gz"
	BitxhubTarNameLinux        = "bitxhub_linux-amd64_%s.tar.gz"
	BitxhubTarName             = ""
	BitxhubConfigName          = "bitxhub.toml"
	BxhConfigRepo              = "bxh_config"
	BitxhubConfigScript        = "bxh_config.sh"
	BxhModifyConfig            = "bxh_modify_config.toml"
	PierConfigName             = "pier.toml"
	PierConfigRepo             = "pier_config"
	PierConfigScript           = "pier_config.sh"
	PierModifyConfig           = "pier_modify_config.toml"
	PlaygroundScript           = "playground.sh"
	FabricScript               = "fabric.sh"
	ChaincodeScript            = "chaincode.sh"
	EthereumScript             = "ethereum.sh"
	PierScript                 = "run_pier.sh"
	QuickStartScript           = "quick_start.sh"
	InfoScript                 = "info.sh"
	Prometheus                 = "prometheus.sh"
	LogScript                  = "log.sh"
	VersionScript              = "version.sh"
	DeployBxhScript            = "deploy_bitxhub.sh"
	DeployPierScript           = "deploy_pier.sh"
	TlsCerts                   = "certs"
	TmpPath                    = "tmp"
	FabricConfig               = "config.yaml"
	QuickStartBitxhubCofigPath = "docker/quick_start/bxhConfig/%s"
	ReleaseJson                = "release.json"

	Pier           = "pier"
	BitXHub        = "bitxhub"
	EthClient      = "eth-client"
	EthClientSo    = "eth-client.so"
	FabricClient   = "fabric-client-1.4"
	FabricClientSo = "fabric-client-1.4.so"
	PierPlugin     = "%s-client"
	RuleName       = "validating.wasm"

	LinuxWasmLibUrl = "https://raw.githubusercontent.com/meshplus/bitxhub/master/build/libwasmer.so"
	MacOSWasmLibUrl = "https://raw.githubusercontent.com/meshplus/bitxhub/master/build/libwasmer.dylib"

	BitxhubUrlLinux            = "https://github.com/meshplus/bitxhub/releases/download/%s/bitxhub_linux-amd64_%s.tar.gz"
	BitxhubUrlMacOS            = "https://github.com/meshplus/bitxhub/releases/download/%s/bitxhub_darwin_x86_64_%s.tar.gz"
	PierUrlLinux               = "https://github.com/meshplus/pier/releases/download/%s/pier_linux-amd64_%s.tar.gz"
	PierUrlMacOS               = "https://github.com/meshplus/pier/releases/download/%s/pier_darwin_x86_64_%s.tar.gz"
	PierFabricClientUrlLinux   = "https://github.com/meshplus/pier-client-fabric/releases/download/%s/fabric-client-%s-Linux"
	PierFabricClientUrlMacOS   = "https://github.com/meshplus/pier-client-fabric/releases/download/%s/fabric-client-%s-Darwin"
	PierEthereumClientUrlLinux = "https://github.com/meshplus/pier-client-ethereum/releases/download/%s/eth-client-%s-Linux"
	PierEthereumClientUrlMacOS = "https://github.com/meshplus/pier-client-ethereum/releases/download/%s/eth-client-%s-Darwin"

	GethUrl     = "https://gethstore.blob.core.windows.net/builds/geth-%s-amd64-1.9.6-bd059680.tar.gz"
	GethTarName = "geth-%s-amd64-1.9.6-bd059680.tar.gz"

	FabricRuleUrl   = "https://raw.githubusercontent.com/meshplus/pier-client-fabric/master/config/validating.wasm"
	EthereumRuleUrl = "https://raw.githubusercontent.com/meshplus/pier-client-ethereum/master/config/validating.wasm"

	FabricContractUrl   = "https://raw.githubusercontent.com/meshplus/pier-client-fabric/%s/example/contracts.zip"
	EthereumContractUrl = "https://raw.githubusercontent.com/meshplus/pier-client-ethereum/%s/example/%s.sol"

	BitxhubConfigUrl = "https://raw.githubusercontent.com/meshplus/bitxhub/%s/config/bitxhub.toml"
)
